package com.xcc.common.entry;

import com.baomidou.mybatisplus.annotation.*;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.format.annotation.DateTimeFormat;

/**
   *@name: frosty
   * @description :
   *@date: 2019/11/8
   */
@ApiModel(value="com.xcc.common.entry.User")
@Data
@TableName(value = "iphone.user")
public class User implements Serializable {
    @TableId(value = "id", type = IdType.INPUT)
    @ApiModelProperty(value="null")
    private String id;

    /**
     * 用户登录账号
     */
    @TableField(value = "user_code")
    @ApiModelProperty(value="用户登录账号")
    private String userCode;

    /**
     * 用户名
     */
    @TableField(value = "user_name")
    @ApiModelProperty(value="用户名")
    private String userName;

    /**
     * 密码
     */
    @TableField(value = "password")
    @ApiModelProperty(value="密码")
    private String password;

    @TableField(value = "role_id")
    @ApiModelProperty(value="null")
    private String roleId;

    /**
     * 用户状态  1禁用 0 正常
     */
    @TableField(value = "state")
    @ApiModelProperty(value="用户状态  1禁用 0 正常")
    private Integer state;

    /**
     * 默认地址 
     */
    @TableField(value = "address_id")
    @ApiModelProperty(value="默认地址 ")
    private String addressId;

    /**
     * 注册时间
     */
    @TableField(value = "register_time")
    @ApiModelProperty(value="注册时间")
    private Date registerTime;

    /**
     * 最后一次登录时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @TableField(value = "last_login_time")
    @ApiModelProperty(value = "最后一次登录时间")
    private Date lastLoginTime;

    /**
     * 用户图片
     */
    @TableField(value = "img_id")
    @ApiModelProperty(value="用户图片")
    private String imgId;

    /**
     * 用户电话
     */
    @TableField(value = "telphone")
    @ApiModelProperty(value="用户电话")
    private String telphone;

    /**
     * 用户身份证  卖家必须填
     */
    @TableField(value = "id_card")
    @ApiModelProperty(value="用户身份证  卖家必须填")
    private String idCard;

    /**
     * 创建时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @TableField(value = "create_time",fill = FieldFill.INSERT)
    @ApiModelProperty(value="创建时间")
    private Date createTime;

    /**
     * 更新时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @TableField(value = "update_time",fill = FieldFill.INSERT_UPDATE)
    @ApiModelProperty(value="更新时间")
    private Date updateTime;

    /**
     * 0未删除 1 已删除
     */
    @Value("0")
    @TableField(value = "del_type")
    @TableLogic  /*逻辑删除  yml 加配置  还有一个bean  配置 */
    @ApiModelProperty(value="0未删除 1 已删除")
    private Byte delType;

    private static final long serialVersionUID = 1L;
}